package ma.co.ba.BusinessApplications.model;

import java.io.Serializable;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name="FAMILLES_PRODUITS")
public class FamilleDeProduit implements Serializable{
	private static final long serialVersionUID = 1L;
	
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	private int id;
	
	@Column(name="NOM_FAMILLE", length=100)
	private String productFamilyName;
	
	@Column(name = "MATRICULE_FAMILLE", unique=true, length = 20)
	private String matriculeFamille;
	
	@OneToMany(mappedBy="familleDeProduit", cascade = CascadeType.ALL, fetch=FetchType.LAZY)
	private List<Produit> produits;

	public FamilleDeProduit(){

	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}
	
	public String getProductFamilyName() {
		return productFamilyName;
	}

	public void setProductFamilyName(String productFamilyName) {
		this.productFamilyName = productFamilyName;
	}

	public List<Produit> getProduits() {
		return produits;
	}

	public void setProduits(List<Produit> produits) {
		this.produits = produits;
	}

	public static long getSerialversionuid() {
		return serialVersionUID;
	}

	public String getMatriculeFamille() {
		return matriculeFamille;
	}

	public void setMatriculeFamille(String matriculeFamille) {
		this.matriculeFamille = matriculeFamille;
	}

}